// 初始化请求配置
uni.$u.http.setConfig((config) => {
	/* config 为默认全局配置*/
	config.baseURL = 'http://localhost:3000'; /* 根域名 */
	return config
})

// 请求拦截
uni.$u.http.interceptors.request.use((config) => { // 可使用async await 做异步操作
	// 初始化请求拦截器时，会执行此方法，此时data为undefined，赋予默认{}
	config.data = config.data || {}
	config.header['Authorization'] = 'Bearer ' + uni.getStorageSync('token')
	return config 
}, config => { // 可使用async await 做异步操作
	return Promise.reject(config)
})

// 如果请求响应是500的话，使用弹窗去打印错误信息
// 如果请求响应是401（没有登录）的话自动跳转到登录的页面
// 如果请求响应是403（没有权限）
uni.$u.http.interceptors.response.use(({data}) => {
	/* 对响应成功做点什么 可使用async await 做异步操作*/
	// if (response.data.code !== 200) { // 服务端返回的状态码不等于200，则reject()
	//    	return Promise.reject(response) // return Promise.reject 可使promise状态进入catch
	// if (response.config.custom.verification) { // 演示自定义参数的作用
	//   	return response.data
	// }
	if(data.code != 200) {
		uni.showToast({
			title:data.msg
		})
		return Promise.reject(data.msg)
	}
	return data
}, (response) => {
	/*  对响应错误做点什么 （statusCode !== 200）*/
	console.log(response)
	return Promise.reject(response)
})